package com.vviton.zyhj.common.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.vviton.zyhj.common.entity.TYyxtHzglHzgxb;
import com.vviton.zyhj.common.utils.page.Page;
import com.vviton.zyhj.common.view.ParamHzfUpdate;
import com.vviton.zyhj.common.view.ViewHzfcx;

/**
 *
 * ClassName: TYyxtHzglHzgxbMapper <br/>
 * Function: 合作关系表Dao <br/>
 * Date: 2016年11月14日 下午3:54:47 <br/>
 *
 * @author gxp
 * @version 1.0
 * @since JDK 1.7
 */
public interface TYyxtHzglHzgxbMapper {
    /**
     *
     * updateXyzt,更新协议状态 . <br/>
     * Author: tangli <br/>
     * Create Date: 2016年11月16日 <br/>
     * ===============================================================<br/>
     * Modifier: tangli <br/>
     * Modify Date: 2016年11月16日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param tYyxtHzglHzgxb 提交审核合作参数
     * @return int
     * @since JDK 1.7
     */
    int updateXyzt(TYyxtHzglHzgxb tYyxtHzglHzgxb);

    /**
     * getHzgxbxx,获取结束合作信息. <br/>
     * Author: 2016 <br/>
     * Create Date: 2016年11月16日 <br/>
     * ===============================================================<br/>
     * Modifier: zhucb <br/>
     * Modify Date: 2016年11月16日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param zh 账号
     * @param ywy 业务域
     * @return TYyxtHzglHzgxb
     * @since JDK 1.7
     */
    TYyxtHzglHzgxb getHzgxbxx(@Param("zh") String zh, @Param("ywy") String ywy);

    /**
     * updateJsHzxx,更新结束合作信息. <br/>
     * Author: 2016 <br/>
     * Create Date: 2016年11月16日 <br/>
     * ===============================================================<br/>
     * Modifier: zhucb <br/>
     * Modify Date: 2016年11月16日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param hzgxb 结束合作参数
     * @return int
     * @since JDK 1.7
     */
    int updateJsHzxx(TYyxtHzglHzgxb hzgxb);

    /**
     *
     * insertTjsh,新增合作审核. <br/>
     * Author: tangli <br/>
     * Create Date: 2016年11月16日 <br/>
     * ===============================================================<br/>
     * Modifier: tangli <br/>
     * Modify Date: 2016年11月16日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param tYyxtHzglHzgxb 参数
     * @return int
     * @since JDK 1.7
     */
    int insertTjsh(TYyxtHzglHzgxb tYyxtHzglHzgxb);

    /**
     *
     * counthzfxxpagination,合作方查询总数. <br/>
     * Author: tangli <br/>
     * Create Date: 2016年11月22日 <br/>
     * ===============================================================<br/>
     * Modifier: tangli <br/>
     * Modify Date: 2016年11月22日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param page 参数
     * @return int
     * @since JDK 1.7
     */
    int countHzfxxPagination(@Param("page") Page page);

    /**
     *
     * getHzfxxpagination,分页查询合作方信息. <br/>
     * Author: tangli <br/>
     * Create Date: 2016年11月22日 <br/>
     * ===============================================================<br/>
     * Modifier: tangli <br/>
     * Modify Date: 2016年11月22日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param page 参数
     * @return List<ViewHzfcx>
     * @since JDK 1.7
     */
    List<ViewHzfcx> getHzfxxpagination(@Param("page") Page page);

    /**
     * getHzgxbxxByZh,根据账号获取合作信息. <br/>
     * Author: huangqq <br/>
     * Create Date: 2016年11月23日 <br/>
     * ===============================================================<br/>
     * Modifier: huangqq <br/>
     * Modify Date: 2016年11月23日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param zh 账号
     * @param ywy 业务域
     * @param xyzt 协议状态
     * @return 结束合作信息
     * @since JDK 1.7
     */
    TYyxtHzglHzgxb getHzgxbxxByZh(@Param("zh") String zh, @Param("ywy") String ywy, @Param("xyzt") String xyzt);

    /**
     *
     * updateHzfXyzt,更新合作方协议状态. <br/>
     * Author: tangli <br/>
     * Create Date: 2016年11月23日 <br/>
     * ===============================================================<br/>
     * Modifier: tangli <br/>
     * Modify Date: 2016年11月23日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param param 请求参数
     * @return int
     * @since JDK 1.7
     */
    int updateHzfXyzt(@Param("param") ParamHzfUpdate param);

    /**
     *
     * getHzgxbShzt,查询合作方的审核状态. <br/>
     * Author: tangli <br/>
     * Create Date: 2016年11月24日 <br/>
     * ===============================================================<br/>
     * Modifier: tangli <br/>
     * Modify Date: 2016年11月24日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param param 请求参数
     * @return TYyxtHzglHzgxb
     * @since JDK 1.7
     */
    TYyxtHzglHzgxb getHzgxbShzt(@Param("param") ParamHzfUpdate param);

    /**
     * getHzgxbXyzt,根据账号获取协议状态. <br/>
     * Author: zhucb <br/>
     * Create Date: 2016年11月24日 <br/>
     * ===============================================================<br/>
     * Modifier: zhucb <br/>
     * Modify Date: 2016年11月24日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param zh 账号
     * @param ywy 业务域
     * @return TYyxtHzglHzgxb
     * @since JDK 1.7
     */
    TYyxtHzglHzgxb getHzgxbXyzt(@Param("zh") String zh, @Param("ywy") String ywy);

    /**
     * getHzgxbxxByZhAndZt,根据账号，业务域，审批结果，审核协议获取关系信息. <br/>
     * Author: huangqq <br/>
     * Create Date: 2016年12月6日 <br/>
     * ===============================================================<br/>
     * Modifier: huangqq <br/>
     * Modify Date: 2016年12月6日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param tYyxtHzglHzgxb 参数
     * @return 关系信息
     * @since JDK 1.7
     */
    TYyxtHzglHzgxb getHzgxbxxByZhAndZt(TYyxtHzglHzgxb tYyxtHzglHzgxb);

    /**
     *
     * getHzgxbxxByZzjgcode,(获取业务域下获取合作方信息列表). <br/>
     * Author: libo <br/>
     * Create Date: 2017年3月25日 <br/>
     * ===============================================================<br/>
     * Modifier: libo <br/>
     * Modify Date: 2017年3月25日 <br/>
     * Modify Description: <br/>
     * ===============================================================<br/>
     *
     * @param cmsorgcode 业务域
     * @return List<TYyxtHzglHzgxb> 合作方列表
     * @since JDK 1.7
     */
    List<TYyxtHzglHzgxb> getHzgxbxxByZzjgcode(@Param("ywy") String cmsorgcode);

}